<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script type="text/javascript">
			//proxy 具体的讲就是可以定义一个代理(proxy)对象, 关联到一个目标(target)对象, 那么这个代理对象就可以视为目标对象的抽象, 从而实现在一些对目标对象的基本操作实现之前进行拦截和控制
			const target = {
				id:'target'
			}
			const handler = {}
			const proxy = new Proxy(target , handler)
			
			console.log(target.id)
			console.log(proxy.id)
			target.id = 'foo'
			console.log(target.id)
			console.log(proxy.id)
			proxy.id = 'bar';
			console.log(target.id) // bar
			console.log(proxy.id)  //bar
			// 两者肯定是不等的
			console.log(target === proxy) // false
			// 注意不能对Proxy使用instanceof
			//proxy instanceof Proxy
			
			const target = {
				name:'loory',
				
			}
			
			const handler = {
				get() {
					return  'override name'
				}			
			}
			const proxy = new Proxy(target , handler)
		</script>
	</body>
</html>
